<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>高级性格测试 | DeepSeek分析</title>
    <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/animejs@3.2.1/lib/anime.min.js"></script>
    <style>
        :root {
            --primary-color: #6366f1;
            --secondary-color: #4f46e5;
            --accent-color: #f59e0b;
            --light-color: #f8fafc;
            --dark-color: #1e293b;
            --text-color: #334155;
            --border-radius: 16px;
            --box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
            --transition: all 0.4s cubic-bezier(0.22, 1, 0.36, 1);
        }
        
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
        }
        
        body {
            background-color: #f1f5f9;
            color: var(--text-color);
            line-height: 1.6;
            min-height: 100vh;
        }
        
        .container {
            max-width: 1200px;
            margin: 0 auto;
            padding: 20px;
        }
        
        header {
            background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
            color: white;
            padding: 20px 0;
            border-radius: 0 0 var(--border-radius) var(--border-radius);
            box-shadow: var(--box-shadow);
            margin-bottom: 40px;
            position: relative;
            overflow: hidden;
        }
        
        header::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 70%);
            animation: rotate 20s linear infinite;
        }
        
        @keyframes rotate {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }
        
        .header-content {
            display: flex;
            justify-content: space-between;
            align-items: center;
            position: relative;
            z-index: 1;
        }
        
        .logo {
            font-size: 28px;
            font-weight: 700;
            letter-spacing: 1px;
            display: flex;
            align-items: center;
        }
        
        .logo::before {
            content: '🧠';
            margin-right: 10px;
            font-size: 24px;
        }
        
        nav ul {
            display: flex;
            list-style: none;
        }
        
        nav ul li {
            margin-left: 30px;
        }
        
        nav ul li a {
            color: white;
            text-decoration: none;
            font-weight: 500;
            transition: var(--transition);
            padding: 8px 16px;
            border-radius: var(--border-radius);
            display: flex;
            align-items: center;
        }
        
        nav ul li a:hover {
            background-color: rgba(255, 255, 255, 0.15);
            transform: translateY(-2px);
        }
        
        nav ul li a::before {
            margin-right: 8px;
        }
        
        nav ul li:nth-child(1) a::before { content: '🏠'; }
        nav ul li:nth-child(2) a::before { content: '📝'; }
        nav ul li:nth-child(3) a::before { content: '📊'; }
        
        .page {
            display: none;
            opacity: 0;
            transform: translateY(20px);
            transition: var(--transition);
        }
        
        .page.active {
            display: block;
            opacity: 1;
            transform: translateY(0);
        }
        
        .card {
            background-color: white;
            border-radius: var(--border-radius);
            box-shadow: var(--box-shadow);
            padding: 40px;
            margin-bottom: 30px;
            transition: var(--transition);
            position: relative;
            overflow: hidden;
        }
        
        .card::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 6px;
            background: linear-gradient(90deg, var(--primary-color), var(--accent-color));
        }
        
        .card:hover {
            transform: translateY(-5px);
            box-shadow: 0 16px 32px rgba(0, 0, 0, 0.15);
        }
        
        .btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background-color: var(--primary-color);
            color: white;
            padding: 14px 28px;
            border-radius: var(--border-radius);
            text-decoration: none;
            font-weight: 600;
            transition: var(--transition);
            border: none;
            cursor: pointer;
            font-size: 16px;
            box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
        }
        
        .btn:hover {
            background-color: var(--secondary-color);
            transform: translateY(-2px);
            box-shadow: 0 6px 16px rgba(79, 70, 229, 0.4);
        }
        
        .btn:active {
            transform: translateY(0);
        }
        
        .btn-accent {
            background-color: var(--accent-color);
            box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
        }
        
        .btn-accent:hover {
            background-color: #f97316;
            box-shadow: 0 6px 16px rgba(249, 115, 22, 0.4);
        }
        
        .btn-outline {
            background-color: transparent;
            border: 2px solid var(--primary-color);
            color: var(--primary-color);
            box-shadow: none;
        }
        
        .btn-outline:hover {
            background-color: rgba(99, 102, 241, 0.1);
        }
        
        .btn::before {
            margin-right: 10px;
        }
        
        .start-test::before { content: '🚀'; }
        .reset-test::before { content: '🔄'; }
        .analyze-deepseek::before { content: '🔍'; }
        
        .hero {
            text-align: center;
            padding: 60px 20px;
            position: relative;
        }
        
        .hero h1 {
            font-size: 48px;
            margin-bottom: 20px;
            color: var(--dark-color);
            font-weight: 800;
            line-height: 1.2;
        }
        
        .hero p {
            font-size: 20px;
            max-width: 700px;
            margin: 0 auto 30px;
            color: var(--text-color);
            opacity: 0.9;
        }
        
        .hero-buttons {
            display: flex;
            justify-content: center;
            gap: 20px;
            margin-top: 30px;
        }
        
        .features {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 30px;
            margin-top: 40px;
        }
        
        .feature-card {
            background-color: white;
            border-radius: var(--border-radius);
            padding: 30px;
            box-shadow: var(--box-shadow);
            text-align: center;
            transition: var(--transition);
            position: relative;
            overflow: hidden;
        }
        
        .feature-card:hover {
            transform: translateY(-10px);
        }
        
        .feature-icon {
            font-size: 50px;
            margin-bottom: 20px;
            display: inline-block;
            background: linear-gradient(135deg, var(--primary-color), var(--accent-color));
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent;
        }
        
        .feature-card h3 {
            margin-bottom: 15px;
            color: var(--dark-color);
            font-weight: 700;
        }
        
        /* 测试页面样式 */
        .test-container {
            max-width: 800px;
            margin: 0 auto;
        }
        
        .question-card {
            margin-bottom: 30px;
        }
        
        .question-text {
            font-size: 24px;
            margin-bottom: 30px;
            font-weight: 600;
            color: var(--dark-color);
            line-height: 1.4;
        }
        
        .options {
            display: grid;
            gap: 15px;
        }
        
        .option {
            display: flex;
            align-items: center;
            padding: 18px 24px;
            background-color: #f8fafc;
            border-radius: var(--border-radius);
            cursor: pointer;
            transition: var(--transition);
            border: 2px solid #e2e8f0;
        }
        
        .option:hover {
            border-color: var(--primary-color);
            background-color: rgba(99, 102, 241, 0.05);
        }
        
        .option.selected {
            background-color: rgba(99, 102, 241, 0.1);
            border-color: var(--primary-color);
            color: var(--primary-color);
        }
        
        .option input {
            margin-right: 15px;
            transform: scale(1.3);
            accent-color: var(--primary-color);
        }
        
        .progress-container {
            margin: 40px 0;
        }
        
        .progress-bar {
            height: 10px;
            background-color: #e2e8f0;
            border-radius: 5px;
            overflow: hidden;
            box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
        }
        
        .progress {
            height: 100%;
            background: linear-gradient(90deg, var(--primary-color), var(--accent-color));
            width: 0%;
            transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);
        }
        
        .progress-text {
            display: flex;
            justify-content: space-between;
            margin-top: 10px;
            font-size: 14px;
            color: var(--text-color);
            font-weight: 500;
        }
        
        .navigation-buttons {
            display: flex;
            justify-content: space-between;
            margin-top: 40px;
            gap: 20px;
        }
        
        /* 结果页面样式 */
        .result-container {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 40px;
        }
        
        .result-text {
            padding: 20px 0;
        }
        
        .result-text h2 {
            color: var(--primary-color);
            margin-bottom: 20px;
            font-size: 32px;
            font-weight: 700;
        }
        
        .result-text p {
            margin-bottom: 20px;
            line-height: 1.8;
            font-size: 17px;
        }
        
        .advice-section {
            margin-top: 30px;
            padding-top: 20px;
            border-top: 1px solid #e2e8f0;
        }
        
        .advice-section h3 {
            color: var(--primary-color);
            margin-bottom: 15px;
            font-size: 20px;
        }
        
        .chart-container {
            position: relative;
            height: 400px;
            width: 100%;
            background-color: white;
            border-radius: var(--border-radius);
            padding: 20px;
            box-shadow: var(--box-shadow);
        }
        
        .result-actions {
            display: flex;
            gap: 15px;
            margin-top: 30px;
        }
        
        .result-history {
            margin-top: 40px;
        }
        
        .history-item {
            background-color: white;
            border-radius: var(--border-radius);
            padding: 20px;
            margin-bottom: 20px;
            box-shadow: var(--box-shadow);
            display: flex;
            justify-content: space-between;
            align-items: center;
            transition: var(--transition);
        }
        
        .history-item:hover {
            transform: translateY(-3px);
        }
        
        .history-date {
            font-size: 14px;
            color: #64748b;
            font-weight: 500;
        }
        
        .history-type {
            font-weight: 600;
            color: var(--dark-color);
            margin-top: 5px;
        }
        
        .history-score {
            font-weight: bold;
            color: var(--primary-color);
            font-size: 18px;
        }
        
        .history-view {
            color: var(--accent-color);
            cursor: pointer;
            font-weight: 600;
            display: flex;
            align-items: center;
        }
        
        .history-view::before {
            content: '👁️';
            margin-right: 8px;
        }
        
        /* DeepSeek分析部分 */
        .deepseek-analysis {
            margin-top: 40px;
            background: linear-gradient(135deg, #f8fafc, #f1f5f9);
            border-radius: var(--border-radius);
            padding: 30px;
            box-shadow: var(--box-shadow);
            border: 1px solid #e2e8f0;
        }
        
        .deepseek-header {
            display: flex;
            align-items: center;
            margin-bottom: 20px;
        }
        
        .deepseek-logo {
            width: 40px;
            height: 40px;
            background-color: var(--primary-color);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            font-weight: bold;
            margin-right: 15px;
        }
        
        .deepseek-title {
            font-size: 20px;
            font-weight: 700;
            color: var(--dark-color);
        }
        
        .deepseek-content {
            background-color: white;
            border-radius: 12px;
            padding: 20px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
            line-height: 1.8;
        }
        
        .loading {
            display: inline-block;
            width: 20px;
            height: 20px;
            border: 3px solid rgba(99, 102, 241, 0.3);
            border-radius: 50%;
            border-top-color: var(--primary-color);
            animation: spin 1s ease-in-out infinite;
            margin-left: 10px;
        }
        
        @keyframes spin {
            to { transform: rotate(360deg); }
        }
        
        /* 响应式设计 */
        @media (max-width: 768px) {
            .header-content {
                flex-direction: column;
                text-align: center;
            }
            
            nav ul {
                margin-top: 20px;
                justify-content: center;
                flex-wrap: wrap;
            }
            
            nav ul li {
                margin: 5px 10px;
            }
            
            .hero h1 {
                font-size: 36px;
            }
            
            .hero-buttons {
                flex-direction: column;
                align-items: center;
            }
            
            .result-container {
                grid-template-columns: 1fr;
            }
            
            .chart-container {
                height: 300px;
            }
            
            .navigation-buttons {
                flex-direction: column-reverse;
            }
        }
    </style>
</head>
<body>
    <header>
        <div class="container header-content">
            <div class="logo">心理维度Pro</div>
            <nav>
                <ul>
                    <li><a href="#" class="nav-link" data-page="home">首页</a></li>
                    <li><a href="#" class="nav-link" data-page="test">性格测试</a></li>
                    <li><a href="#" class="nav-link" data-page="results">测试结果</a></li>
                </ul>
            </nav>
        </div>
    </header>
    
    <div class="container">
        <!-- 首页 -->
        <div class="page active" id="home">
            <div class="hero">
                <h1>发现你的性格密码</h1>
                <p>通过科学的心理测试和DeepSeek AI分析，深入了解你的性格特质、优势和发展空间，获得个性化建议。</p>
                <div class="hero-buttons">
                    <a href="#" class="btn btn-accent start-test">开始测试</a>
                    <a href="#" class="btn btn-outline nav-link" data-page="results">查看历史结果</a>
                </div>
            </div>
            
            <div class="features">
                <div class="feature-card">
                    <div class="feature-icon">🔬</div>
                    <h3>科学验证</h3>
                    <p>基于心理学五大特质理论，经过严格验证的测试问卷，确保结果准确可靠。</p>
                </div>
                <div class="feature-card">
                    <div class="feature-icon">🤖</div>
                    <h3>AI分析</h3>
                    <p>结合DeepSeek AI技术，提供深度性格分析和个性化发展建议。</p>
                </div>
                <div class="feature-card">
                    <div class="feature-icon">📈</div>
                    <h3>可视化报告</h3>
                    <p>精美的图表和直观的数据展示，帮助你全面理解测试结果。</p>
                </div>
            </div>
        </div>
        
        <!-- 测试页面 -->
        <div class="page" id="test">
            <div class="test-container">
                <h2>性格测试</h2>
                <p>请根据你的真实情况选择最符合的选项。诚实回答才能获得最准确的结果。</p>
                
                <div class="progress-container">
                    <div class="progress-bar">
                        <div class="progress" id="progress-bar"></div>
                    </div>
                    <div class="progress-text">
                        <span>测试进度</span>
                        <span id="progress-text">0/20</span>
                    </div>
                </div>
                
                <div class="question-card">
                    <div class="question-text" id="question-text">问题加载中...</div>
                    <div class="options" id="options-container">
                        <!-- 选项将通过JavaScript动态生成 -->
                    </div>
                </div>
                
                <div class="navigation-buttons">
                    <button class="btn btn-outline" id="prev-btn" disabled>上一题</button>
                    <div>
                        <button class="btn reset-test" id="reset-btn">重置测试</button>
                        <button class="btn" id="next-btn">下一题</button>
                        <button class="btn btn-accent" id="submit-btn" style="display: none;">提交测试</button>
                    </div>
                </div>
            </div>
        </div>
        
        <!-- 结果页面 -->
        <div class="page" id="results">
            <h2>测试结果分析</h2>
            
            <div class="card">
                <h3>最新测试报告</h3>
                <div class="result-container">
                    <div class="result-text">
                        <h2 id="result-title">你的性格类型</h2>
                        <p id="result-description">测试结果描述将显示在这里。根据你的回答，我们会提供详细的性格分析，包括你的优势、可能的挑战以及适合你的职业和环境建议。</p>
                        <div id="result-details">
                            <!-- 各维度详情将通过JavaScript动态生成 -->
                        </div>
                        <div class="advice-section">
                            <h3>个人发展建议</h3>
                            <p id="result-advice"></p>
                        </div>
                        <div class="result-actions">
                            <button class="btn reset-test" id="retake-btn">重新测试</button>
                            <button class="btn btn-accent analyze-deepseek" id="deepseek-btn">DeepSeek分析</button>
                        </div>
                    </div>
                    <div class="chart-container">
                        <canvas id="radar-chart"></canvas>
                    </div>
                </div>
                
                <div class="deepseek-analysis" id="deepseek-analysis" style="display: none;">
                    <div class="deepseek-header">
                        <div class="deepseek-logo">DS</div>
                        <div class="deepseek-title">DeepSeek AI分析</div>
                    </div>
                    <div class="deepseek-content" id="deepseek-content">
                        <div id="deepseek-text">AI分析结果将显示在这里...</div>
                    </div>
                </div>
            </div>
            
            <div class="card result-history">
                <h3>历史测试记录</h3>
                <div id="history-list">
                    <!-- 历史记录将通过JavaScript动态生成 -->
                </div>
            </div>
        </div>
    </div>

    <script>
        // 页面导航
        document.querySelectorAll('.nav-link').forEach(link => {
            link.addEventListener('click', function(e) {
                e.preventDefault();
                const pageId = this.getAttribute('data-page');
                showPage(pageId);
            });
        });
        
        // 修复开始测试按钮
        document.querySelector('.start-test').addEventListener('click', function(e) {
            e.preventDefault();
            initTest();
            showPage('test');
        });
        
        function showPage(pageId) {
            document.querySelectorAll('.page').forEach(page => {
                page.classList.remove('active');
            });
            document.getElementById(pageId).classList.add('active');
            
            // 滚动到顶部
            window.scrollTo({ top: 0, behavior: 'smooth' });
        }
        
        // 测试问题数据
        const questions = [
            {
                text: "在社交场合中，你通常是主动与他人交谈的人吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "extroversion"
            },
            {
                text: "你是否经常感到焦虑或担忧？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "neuroticism"
            },
            {
                text: "你喜欢尝试新事物和体验新感觉吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "openness"
            },
            {
                text: "你是一个有条理、喜欢按计划行事的人吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "conscientiousness"
            },
            {
                text: "你通常会信任他人，认为大多数人本质上是善良的吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "agreeableness"
            },
            {
                text: "在团队中，你经常担任领导角色吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "extroversion"
            },
            {
                text: "你是否容易被批评或负面评价影响情绪？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "neuroticism"
            },
            {
                text: "你是否对艺术、音乐或诗歌有强烈的欣赏能力？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "openness"
            },
            {
                text: "你会提前完成工作任务以避免最后一刻的匆忙吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "conscientiousness"
            },
            {
                text: "你经常考虑他人的感受并试图帮助他们吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "agreeableness"
            },
            {
                text: "你喜欢成为关注的中心吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "extroversion"
            },
            {
                text: "你是否经常感到紧张或不安？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "neuroticism"
            },
            {
                text: "你喜欢思考抽象概念和哲学问题吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "openness"
            },
            {
                text: "你会仔细检查工作以避免错误吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "conscientiousness"
            },
            {
                text: "你通常会原谅那些冤枉你的人吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "agreeableness"
            },
            {
                text: "你很容易结交新朋友吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "extroversion"
            },
            {
                text: "你是否经常感到情绪波动很大？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "neuroticism"
            },
            {
                text: "你喜欢尝试不同文化的食物和习俗吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "openness"
            },
            {
                text: "你会按照待办事项清单有条不紊地工作吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "conscientiousness"
            },
            {
                text: "你通常会相信别人会遵守承诺吗？",
                options: [
                    "完全不符合",
                    "不太符合",
                    "中立",
                    "比较符合",
                    "完全符合"
                ],
                dimension: "agreeableness"
            }
        ];
        
        // 测试逻辑
        let currentQuestion = 0;
        let answers = [];
        let testHistory = JSON.parse(localStorage.getItem('personalityTestHistory')) || [];
        let radarChart = null;
        
        // 初始化测试
        function initTest() {
            answers = Array(questions.length).fill(undefined);
            currentQuestion = 0;
            showQuestion();
            
            // 重置所有选项状态
            document.querySelectorAll('.option').forEach(option => {
                option.classList.remove('selected');
            });
            
            // 重置进度条
            updateProgress();
        }
        
        // 显示当前问题
        function showQuestion() {
            const question = questions[currentQuestion];
            document.getElementById('question-text').textContent = question.text;
            
            const optionsContainer = document.getElementById('options-container');
            optionsContainer.innerHTML = '';
            
            question.options.forEach((option, index) => {
                const optionElement = document.createElement('div');
                optionElement.className = 'option';
                if (answers[currentQuestion] === index) {
                    optionElement.classList.add('selected');
                }
                
                optionElement.innerHTML = `
                    <input type="radio" name="question-${currentQuestion}" id="option-${currentQuestion}-${index}" value="${index}" 
                        ${answers[currentQuestion] === index ? 'checked' : ''}>
                    <label for="option-${currentQuestion}-${index}">${option}</label>
                `;
                
                optionElement.addEventListener('click', () => {
                    document.querySelectorAll(`.option`).forEach(opt => {
                        opt.classList.remove('selected');
                    });
                    optionElement.classList.add('selected');
                    answers[currentQuestion] = index;
                });
                
                optionsContainer.appendChild(optionElement);
            });
            
            // 更新进度条
            updateProgress();
            
            // 更新导航按钮状态
            document.getElementById('prev-btn').disabled = currentQuestion === 0;
            
            if (currentQuestion === questions.length - 1) {
                document.getElementById('next-btn').style.display = 'none';
                document.getElementById('submit-btn').style.display = 'inline-block';
            } else {
                document.getElementById('next-btn').style.display = 'inline-block';
                document.getElementById('submit-btn').style.display = 'none';
            }
        }
        
        // 更新进度条
        function updateProgress() {
            const progress = ((currentQuestion + 1) / questions.length) * 100;
            document.getElementById('progress-bar').style.width = `${progress}%`;
            document.getElementById('progress-text').textContent = `${currentQuestion + 1}/${questions.length}`;
        }
        
        // 导航按钮事件
        document.getElementById('prev-btn').addEventListener('click', () => {
            if (currentQuestion > 0) {
                currentQuestion--;
                showQuestion();
                
                // 滚动到问题顶部
                document.getElementById('question-text').scrollIntoView({ behavior: 'smooth' });
            }
        });
        
        document.getElementById('next-btn').addEventListener('click', () => {
            if (answers[currentQuestion] === undefined) {
                alert('请选择一个选项后再继续');
                return;
            }
            
            if (currentQuestion < questions.length - 1) {
                currentQuestion++;
                showQuestion();
                
                // 滚动到问题顶部
                document.getElementById('question-text').scrollIntoView({ behavior: 'smooth' });
            }
        });
        
        document.getElementById('submit-btn').addEventListener('click', () => {
            if (answers[currentQuestion] === undefined) {
                alert('请选择一个选项后再提交');
                return;
            }
            
            // 检查是否所有问题都已回答
            const unanswered = answers.some(answer => answer === undefined);
            if (unanswered) {
                if (!confirm('您还有未回答的问题，确定要提交吗？')) {
                    return;
                }
            }
            
            calculateResults();
        });
        
        // 重置测试
        document.getElementById('reset-btn').addEventListener('click', () => {
            if (confirm('确定要重置测试吗？这将清除所有已回答的问题。')) {
                initTest();
            }
        });
        
        document.getElementById('retake-btn').addEventListener('click', () => {
            initTest();
            showPage('test');
        });
        
        // 计算结果
        function calculateResults() {
            // 计算各维度得分
            const dimensionScores = {
                extroversion: 0,
                neuroticism: 0,
                openness: 0,
                conscientiousness: 0,
                agreeableness: 0
            };
            
            const dimensionCounts = {
                extroversion: 0,
                neuroticism: 0,
                openness: 0,
                conscientiousness: 0,
                agreeableness: 0
            };
            
            questions.forEach((question, index) => {
                const answer = answers[index] !== undefined ? answers[index] : 2; // 默认选中立
                dimensionScores[question.dimension] += (answer + 1) * 5; // 转换为百分制
                dimensionCounts[question.dimension]++;
            });
            
            // 计算平均分
            const results = {};
            for (const dimension in dimensionScores) {
                results[dimension] = Math.round(dimensionScores[dimension] / dimensionCounts[dimension]);
            }
            
            // 保存结果
            const testResult = {
                date: new Date().toLocaleDateString('zh-CN', { year: 'numeric', month: 'long', day: 'numeric' }),
                time: new Date().toLocaleTimeString('zh-CN', { hour: '2-digit', minute: '2-digit' }),
                scores: results,
                type: "五维性格测试",
                answers: [...answers]
            };
            
            testHistory.unshift(testResult);
            localStorage.setItem('personalityTestHistory', JSON.stringify(testHistory));
            
            // 显示结果
            showPage('results');
            setTimeout(() => {
                displayResults(testResult);
            }, 10);
        }
        
        // 显示结果
        function displayResults(result) {
            const { extroversion, neuroticism, openness, conscientiousness, agreeableness } = result.scores;
            
            // 设置结果文本
            const resultTitle = document.getElementById('result-title');
            const resultDesc = document.getElementById('result-description');
            const resultDetails = document.getElementById('result-details');
            const resultAdvice = document.getElementById('result-advice');
            
            if (resultTitle) resultTitle.textContent = getPersonalityType(result.scores);
            if (resultDesc) resultDesc.textContent = getPersonalityDescription(result.scores);
            
            if (resultDetails) {
                resultDetails.innerHTML = `
                    <p><strong>外向性 (${extroversion}%)</strong>: ${getDimensionDescription('extroversion', extroversion)}</p>
                    <p><strong>神经质 (${neuroticism}%)</strong>: ${getDimensionDescription('neuroticism', neuroticism)}</p>
                    <p><strong>开放性 (${openness}%)</strong>: ${getDimensionDescription('openness', openness)}</p>
                    <p><strong>责任心 (${conscientiousness}%)</strong>: ${getDimensionDescription('conscientiousness', conscientiousness)}</p>
                    <p><strong>宜人性 (${agreeableness}%)</strong>: ${getDimensionDescription('agreeableness', agreeableness)}</p>
                `;
            }
            
            if (resultAdvice) {
                resultAdvice.innerHTML = getPersonalityAdvice(result.scores);
            }
            
            // 绘制雷达图
            drawRadarChart(result.scores);
            
            // 更新历史记录列表
            updateHistoryList();
            
            // 隐藏DeepSeek分析区域
            const deepseekAnalysis = document.getElementById('deepseek-analysis');
            if (deepseekAnalysis) deepseekAnalysis.style.display = 'none';
        }
        
        // 绘制雷达图
        function drawRadarChart(scores) {
            const ctx = document.getElementById('radar-chart').getContext('2d');
            
            // 如果已有图表实例，先销毁
            if (window.radarChart) {
                window.radarChart.destroy();
            }
            
            // 设置渐变色
            const gradient = ctx.createLinearGradient(0, 0, 0, 400);
            gradient.addColorStop(0, 'rgba(99, 102, 241, 0.4)');
            gradient.addColorStop(1, 'rgba(99, 102, 241, 0.1)');
            
            window.radarChart = new Chart(ctx, {
                type: 'radar',
                data: {
                    labels: ['外向性', '神经质', '开放性', '责任心', '宜人性'],
                    datasets: [{
                        label: '你的分数',
                        data: [
                            scores.extroversion,
                            scores.neuroticism,
                            scores.openness,
                            scores.conscientiousness,
                            scores.agreeableness
                        ],
                        backgroundColor: gradient,
                        borderColor: 'rgba(99, 102, 241, 1)',
                        borderWidth: 2,
                        pointBackgroundColor: 'rgba(99, 102, 241, 1)',
                        pointBorderColor: '#fff',
                        pointHoverBackgroundColor: '#fff',
                        pointHoverBorderColor: 'rgba(99, 102, 241, 1)',
                        pointRadius: 5,
                        pointHoverRadius: 7
                    }]
                },
                options: {
                    responsive: true,
                    maintainAspectRatio: false,
                    scales: {
                        r: {
                            angleLines: {
                                display: true,
                                color: 'rgba(0, 0, 0, 0.1)'
                            },
                            suggestedMin: 0,
                            suggestedMax: 100,
                            ticks: {
                                stepSize: 20,
                                backdropColor: 'transparent',
                                color: '#64748b',
                                font: {
                                    weight: '500'
                                }
                            },
                            grid: {
                                color: 'rgba(0, 0, 0, 0.05)'
                            },
                            pointLabels: {
                                font: {
                                    size: 14,
                                    weight: '600'
                                },
                                color: '#475569'
                            }
                        }
                    },
                    plugins: {
                        legend: {
                            display: false
                        },
                        tooltip: {
                            callbacks: {
                                label: function(context) {
                                    return `${context.dataset.label}: ${context.raw}%`;
                                }
                            },
                            bodyFont: {
                                weight: '600'
                            },
                            padding: 12,
                            backgroundColor: 'rgba(30, 41, 59, 0.95)'
                        }
                    },
                    elements: {
                        line: {
                            tension: 0.1
                        }
                    }
                }
            });
        }
        
        // 更新历史记录列表
        function updateHistoryList() {
            const historyList = document.getElementById('history-list');
            historyList.innerHTML = '';
            
            if (testHistory.length === 0) {
                historyList.innerHTML = '<p style="text-align: center; color: #64748b;">暂无历史测试记录</p>';
                return;
            }
            
            testHistory.forEach((test, index) => {
                const highestDimension = Object.entries(test.scores).reduce((a, b) => a[1] > b[1] ? a : b)[0];
                const dimensionNames = {
                    extroversion: "外向性",
                    neuroticism: "神经质",
                    openness: "开放性",
                    conscientiousness: "责任心",
                    agreeableness: "宜人性"
                };
                
                const historyItem = document.createElement('div');
                historyItem.className = 'history-item';
                historyItem.innerHTML = `
                    <div>
                        <div class="history-date">${test.date} ${test.time}</div>
                        <div class="history-type">${test.type}</div>
                    </div>
                    <div class="history-score">${dimensionNames[highestDimension]}: ${test.scores[highestDimension]}%</div>
                    <div class="history-view" data-index="${index}">查看详情</div>
                `;
                
                historyItem.querySelector('.history-view').addEventListener('click', () => {
                    displayResults(testHistory[index]);
                    
                    // 滚动到顶部
                    window.scrollTo({ top: 0, behavior: 'smooth' });
                });
                
                historyList.appendChild(historyItem);
            });
        }
        
        // DeepSeek分析
        document.getElementById('deepseek-btn').addEventListener('click', function() {
            const currentResult = testHistory[0];
            const analysisSection = document.getElementById('deepseek-analysis');
            const deepseekText = document.getElementById('deepseek-text');
            
            // 显示加载状态
            this.innerHTML = '分析中<span class="loading"></span>';
            this.disabled = true;
            
            // 显示分析区域
            analysisSection.style.display = 'block';
            analysisSection.scrollIntoView({ behavior: 'smooth' });
            
            // 模拟API调用延迟
            setTimeout(() => {
                // 生成DeepSeek分析结果
                const analysis = generateDeepSeekAnalysis(currentResult.scores);
                deepseekText.innerHTML = analysis;
                
                // 恢复按钮状态
                this.innerHTML = 'DeepSeek分析 <span class="analyze-deepseek"></span>';
                this.disabled = false;
            }, 2000);
        });
        
        // 生成DeepSeek分析结果
        function generateDeepSeekAnalysis(scores) {
            const { extroversion, neuroticism, openness, conscientiousness, agreeableness } = scores;
            
            let analysis = `
                <h3 style="color: var(--primary-color); margin-bottom: 15px;">基于你的测试结果的AI分析</h3>
                <p>根据你的性格测试结果，DeepSeek AI生成了以下深度分析：</p>
                <ul style="margin-top: 15px; padding-left: 20px;">
            `;
            
            // 外向性分析
            if (extroversion >= 70) {
                analysis += `<li>你的<strong>外向性得分很高(${extroversion}%)</strong>，表明你是一个充满活力、喜欢社交的人。你在团队中往往能带动气氛，适合需要频繁人际互动的工作。</li>`;
            } else if (extroversion <= 30) {
                analysis += `<li>你的<strong>外向性得分较低(${extroversion}%)</strong>，说明你更倾向于独处或小团体互动。你可能在需要深度思考和独立工作的环境中表现最佳。</li>`;
            } else {
                analysis += `<li>你的<strong>外向性适中(${extroversion}%)</strong>，能够在社交和独处之间找到良好的平衡。这种灵活性使你能适应多种社交环境。</li>`;
            }
            
            // 神经质分析
            if (neuroticism >= 70) {
                analysis += `<li>你的<strong>神经质得分较高(${neuroticism}%)</strong>，可能对压力和负面情绪更敏感。建议练习正念冥想和情绪调节技巧，建立规律的运动习惯有助于情绪稳定。</li>`;
            } else if (neuroticism <= 30) {
                analysis += `<li>你的<strong>神经质得分很低(${neuroticism}%)</strong>，情绪非常稳定，不容易被压力影响。这种特质在高压环境中特别有价值。</li>`;
            } else {
                analysis += `<li>你的<strong>神经质适中(${neuroticism}%)</strong>，大多数时候能保持情绪稳定，但在极端压力下仍可能受到影响。</li>`;
            }
            
            // 开放性分析
            if (openness >= 70) {
                analysis += `<li>你的<strong>开放性得分很高(${openness}%)</strong>，表明你富有创造力、好奇心强。你适合从事需要创新思维的工作，如艺术、设计或研发领域。</li>`;
            } else if (openness <= 30) {
                analysis += `<li>你的<strong>开放性得分较低(${openness}%)</strong>，更偏好实际和传统的方式。你在需要遵循既定流程的工作中表现可靠。</li>`;
            } else {
                analysis += `<li>你的<strong>开放性适中(${openness}%)</strong>，能够在传统和创新之间找到平衡，既尊重经验也愿意尝试新方法。</li>`;
            }
            
            // 责任心分析
            if (conscientiousness >= 70) {
                analysis += `<li>你的<strong>责任心得分很高(${conscientiousness}%)</strong>，非常可靠、有条理。你擅长需要细致规划和执行的任务，是团队中值得信赖的成员。</li>`;
            } else if (conscientiousness <= 30) {
                analysis += `<li>你的<strong>责任心得分较低(${conscientiousness}%)</strong>，更偏好灵活自发的工作方式。你可能在需要快速适应变化的环境中表现更好。</li>`;
            } else {
                analysis += `<li>你的<strong>责任心适中(${conscientiousness}%)</strong>，能够在条理和灵活之间取得平衡，根据情况调整工作方式。</li>`;
            }
            
            // 宜人性分析
            if (agreeableness >= 70) {
                analysis += `<li>你的<strong>宜人性得分很高(${agreeableness}%)</strong>，非常友善、合作。你在团队中能营造和谐氛围，适合需要高度协作的工作。</li>`;
            } else if (agreeableness <= 30) {
                analysis += `<li>你的<strong>宜人性得分较低(${agreeableness}%)</strong>，更直接和独立。你可能在需要坚定立场或竞争性的环境中表现更好。</li>`;
            } else {
                analysis += `<li>你的<strong>宜人性适中(${agreeableness}%)</strong>，能够在考虑自己和他人需求之间取得平衡。</li>`;
            }
            
            analysis += `</ul>`;
            
            // 添加职业建议
            analysis += `<h3 style="color: var(--primary-color); margin: 20px 0 15px;">职业发展建议</h3>`;
            
            if (openness >= 70 && extroversion >= 60) {
                analysis += `<p>基于你的高开放性和外向性，你可能会在创意总监、市场营销、活动策划或产品设计等职业中表现出色。这些角色能充分发挥你的创造力和人际交往能力。</p>`;
            } else if (conscientiousness >= 70 && neuroticism <= 40) {
                analysis += `<p>你的高责任心和情绪稳定性使你非常适合项目管理、财务分析、运营管理或质量控制等需要细致规划和执行的职位。</p>`;
            } else if (agreeableness >= 70 && extroversion >= 60) {
                analysis += `<p>你的人际交往能力和友善特质使你在人力资源、客户服务、心理咨询或教育培训等领域具有天然优势。</p>`;
            } else {
                analysis += `<p>你的性格特质组合表明你是一个多面手，能够适应多种工作环境。建议探索跨职能角色，如业务分析师、产品经理或顾问，这些职位能让你发挥多方面的能力。</p>`;
            }
            
            // 添加人际关系建议
            analysis += `<h3 style="color: var(--primary-color); margin: 20px 0 15px;">人际关系建议</h3>`;
            
            if (extroversion >= 70) {
                analysis += `<p>作为外向者，你自然能建立广泛的人际网络。建议有意识地培养一些深度关系，定期与重要的人进行有意义的对话。</p>`;
            } else {
                analysis += `<p>作为内向者，你更偏好深度而非广度的社交。建议寻找志同道合的小群体，参与你真正感兴趣的活动来建立联系。</p>`;
            }
            
            if (agreeableness >= 70) {
                analysis += `<p>你的高宜人性意味着你常常把他人需求放在第一位。记住，健康的关系需要平衡 - 学会表达自己的需求和界限同样重要。</p>`;
            }
            
            return analysis;
        }
        
        // 辅助函数 - 获取性格类型
        function getPersonalityType(scores) {
            const { extroversion, neuroticism, openness, conscientiousness, agreeableness } = scores;
            
            if (extroversion > 70 && agreeableness > 70 && openness > 60) {
                return "热情创造者";
            } else if (conscientiousness > 70 && neuroticism < 30 && agreeableness > 60) {
                return "稳健建设者";
            } else if (openness > 70 && extroversion > 60) {
                return "创新探索者";
            } else if (agreeableness > 70 && neuroticism < 40) {
                return "和谐调解者";
            } else if (neuroticism > 70 && openness > 60) {
                return "敏感思想家";
            } else if (extroversion < 30 && openness > 60) {
                return "深度观察者";
            } else {
                return "平衡适应者";
            }
        }
        
        // 辅助函数 - 获取性格描述
        function getPersonalityDescription(scores) {
            const type = getPersonalityType(scores);
            
            switch(type) {
                case "热情创造者":
                    return "你是一个充满活力、富有创造力且善于交际的人。你擅长将创新的想法转化为实际行动，并在团队中激发他人的热情。你的开放性和社交能力使你能轻松适应新环境并建立广泛的人际网络。";
                case "稳健建设者":
                    return "你是一个可靠、有条理且情绪稳定的人。你擅长制定计划并坚持不懈地执行，是团队中不可或缺的支柱。别人依赖你的组织能力和务实态度，你为项目带来的稳定性和连续性非常有价值。";
                case "创新探索者":
                    return "你思想开放，充满好奇心，喜欢探索新领域。你擅长提出原创想法和解决方案，在需要创新思维的环境中表现出色。你的热情和远见能激励他人跳出思维定式。";
                case "和谐调解者":
                    return "你是一个友善、体贴且合作的人，擅长化解冲突、营造和谐氛围。你敏锐地感知他人的需求，并努力满足这些需求。你为团队带来的凝聚力和正能量是无价的。";
                case "敏感思想家":
                    return "你情感丰富，思维深刻，对外界刺激反应强烈。虽然你可能容易情绪波动，但这种敏感性也使你具有独特的创造力和深刻的洞察力。你在艺术、写作或咨询等领域可能表现出色。";
                case "深度观察者":
                    return "你是一个喜欢深入思考的内向者，偏好独处或小团体互动。你擅长分析复杂问题并提出独到见解。在需要专注和深度的工作中，你的贡献往往非常有价值。";
                default:
                    return "你的性格在不同维度上相对平衡，没有特别极端的特质。这种平衡使你能灵活适应各种情况和角色。你可能会在不同环境中发现自己的不同优势，继续探索将帮助你更好地认识自己。";
            }
        }
        
        // 辅助函数 - 获取维度描述
        function getDimensionDescription(dimension, score) {
            const descriptions = {
                extroversion: {
                    high: "你非常外向，喜欢社交活动，在人群中感到精力充沛。你通常主动发起对话，享受成为关注中心。",
                    medium: "你在社交和独处之间保持良好平衡。你既能享受社交互动，也需要独处时间充电。",
                    low: "你比较内向，偏好独处或小团体互动。社交活动可能让你感到疲惫，你需要独处时间恢复精力。"
                },
                neuroticism: {
                    high: "你情绪反应强烈，容易感到焦虑、紧张或情绪波动。你可能对压力和负面事件更敏感。",
                    medium: "你通常能保持情绪稳定，但重大压力或负面事件仍可能影响你。",
                    low: "你情绪非常稳定，不容易感到焦虑或紧张。你能冷静应对压力情境，保持理性思考。"
                },
                openness: {
                    high: "你思想开放，富有创造力，喜欢尝试新事物。你对艺术、文化和抽象概念有浓厚兴趣。",
                    medium: "你对新体验保持适度开放，在传统和创新之间取得平衡。",
                    low: "你比较实际和传统，偏好熟悉的事物和常规。你对抽象概念或非常规想法兴趣较低。"
                },
                conscientiousness: {
                    high: "你非常有条理、自律且可靠。你注重细节，喜欢按计划行事，并能坚持不懈地追求目标。",
                    medium: "你在条理和灵活之间保持平衡。你能根据需要调整自己的组织程度。",
                    low: "你比较随性和灵活，偏好自发行为而非严格计划。你可能更关注当下而非长期规划。"
                },
                agreeableness: {
                    high: "你非常友善、合作且富有同情心。你重视和谐的人际关系，常常把他人需求放在首位。",
                    medium: "你在考虑自己和他人需求之间保持平衡。",
                    low: "你比较直接和独立，可能更关注自身需求而非人际关系和谐。你在竞争性环境中可能表现更好。"
                }
            };
            
            if (score >= 70) return descriptions[dimension].high;
            if (score <= 30) return descriptions[dimension].low;
            return descriptions[dimension].medium;
        }
        
        // 辅助函数 - 获取发展建议
        function getPersonalityAdvice(scores) {
            const { extroversion, neuroticism, openness, conscientiousness, agreeableness } = scores;
            let advice = [];
            
            if (extroversion > 70) {
                advice.push("利用你的社交能力建立广泛的人脉网络，但也要有意识地培养一些深度关系。定期留出独处时间进行反思和自我充电。");
            } else if (extroversion < 30) {
                advice.push("逐步扩大你的社交舒适区，从小型聚会开始。寻找志同道合的人进行深入交流，而非强迫自己参加大型社交活动。");
            }
            
            if (neuroticism > 70) {
                advice.push("建立规律的正念冥想练习，每天10-15分钟。规律的有氧运动(如快走、游泳)也能显著改善情绪稳定性。考虑记录情绪日记，识别触发因素。");
            }
            
            if (openness < 30) {
                advice.push("每月尝试一件新事物，可以是简单的如新食物，或更深入的如新技能学习。保持好奇心，问更多'如果...会怎样'的问题。");
            } else if (openness > 70) {
                advice.push("确保将你的创意想法转化为实际行动。设定具体的项目截止日期，或与更务实的人合作来实现你的愿景。");
            }
            
            if (conscientiousness < 30) {
                advice.push("使用简单的待办事项清单和日历提醒来组织生活。从小的、可实现的目标开始，逐步培养规划习惯。奖励自己完成任务。");
            } else if (conscientiousness > 70) {
                advice.push("偶尔允许自己打破常规，尝试一些自发行为。学会区分'完美'和'足够好'，避免过度追求完美导致的压力。");
            }
            
            if (agreeableness > 70) {
                advice.push("练习自信沟通技巧，在关心他人的同时表达自己的需求。记住，说'不'是健康的边界设置，而非自私行为。");
            } else if (agreeableness < 30) {
                advice.push("尝试更积极地倾听他人观点，在表达自己意见前先理解对方立场。考虑合作而非竞争的方式可能带来更好的长期结果。");
            }
            
            return advice.length > 0 ? advice.join("<br><br>") : "你的性格特质相对平衡，继续保持这种灵活性。可以考虑探索新的兴趣领域，进一步发展你的潜力。";
        }
        
        // 初始化
        document.addEventListener('DOMContentLoaded', function() {
            initTest();
            if (testHistory.length > 0) {
                updateHistoryList();
            }
            
            // 添加动画效果
            anime({
                targets: '.feature-card',
                translateY: [20, 0],
                opacity: [0, 1],
                delay: anime.stagger(100),
                duration: 800,
                easing: 'easeOutExpo'
            });
        });
    </script>
</body>
</html>